package compiladores;

public class Token {
	String lexema;
	int tipo;
	Object valor;
	
	public Token(String lexema, int tipo, Object valor) {
		this.lexema = lexema;
		this.tipo = tipo;
		this.valor = valor;
	}

	public String getLexema() {
		return lexema;
	}

	public void setLexema(String lexema) {
		this.lexema = lexema;
	}

	public int getTipo() {
		return tipo;
	}

	public void setTipo(int tipo) {
		this.tipo = tipo;
	}

	public Object getValor() {
		return valor;
	}

	public void setValor(Object valor) {
		this.valor = valor;
	}

	@Override
	public String toString() {
		return "Token [lexema=" + lexema + ", tipo=" + tipo + ", valor="
				+ valor + "]";
	}
	
	@Override
    public boolean equals(Object obj){
        if ( obj == null ) return false;
        if ( this == obj ) return true;
        if ( ! (obj instanceof Token ) ) return false;
        Token t = (Token) obj;
        return this.lexema.equals(t.lexema);
         
    }
}
